import { suc } from "../../index";
import axios from "./../axios";
import { message } from "ant-design-vue";
const [messageApi, contextHolder] = message.useMessage();

// 用户登录
const userLogin = (data) => {
  return axios.post("/users/login", data).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};
// 用户退出
const userLogout = (id) => {
  return axios.post(`/users/logout`).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};
// 获取用户列表
const getUserList = () => {
  return axios.get("/users/list_users").then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

// 添加用户
const addUser = (data) => {
  return axios.post("/users/add_user", data).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};
// 删除用户
const delUser = (id) => {
  return axios.delete(`/users/delete_user/${id}`).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};
// 修改用户
const changeUser = (id, data) => {
  return axios.put(`/users/update_user/${id}`, data).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

// 获取分类列表
const getCategoryList = () => {
  return axios.get("/categories_view/categories").then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

// 添加分类列表
const addCategory = (data) => {
  return axios.post("/categories_view/categories", data).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

// 修改分类列表
const changeCategory = (id, data) => {
  return axios.put(`/categories_view/categories/${id}`, data).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};
// 删除分类
const delCategory = (id) => {
  return axios.delete(`/categories_view/categories/${id}`).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

// 获取商品列表
const getProductList = (params) => {
  return axios.get("/product_view/products", { params }).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

const uploadFile = (data) => {
  return axios.post("/upload", data).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

const addProduct = (data) => {
  return axios.post("/product_view/products", data).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

const queryProduct = (id) => {
  return axios.get(`/product_view/products/${id}`).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

const editProduct = (id, data) => {
  return axios.put(`/product_view/products/${id}`, data).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

const delProduct = (id) => {
  return axios.delete(`/product_view/products/${id}`).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

const getBlogsList = (params) => {
  return axios.get(`/blog/blogs`, { params }).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

const queryBlog = (id) => {
  return axios.get(`/blog/blogs/${id}`).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

const addBlog = (data) => {
  return axios.post("/blog/blogs", data).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

const delBlog = (id) => {
  return axios.delete(`/blog/blogs/${id}`).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};
const editBlog = (id, data) => {
  return axios.put(`/blog/blogs/${id}`, data).then((res) => {
    const data = res.data;
    if (!suc(data.status) && res.data.message) message.error(res.data.message);
    return res.data;
  });
};

export {
  userLogin,
  userLogout,
  getUserList,
  addUser,
  delUser,
  changeUser,
  getCategoryList,
  changeCategory,
  addCategory,
  delCategory,
  getProductList,
  uploadFile,
  addProduct,
  queryProduct,
  editProduct,
  delProduct,
  getBlogsList,
  queryBlog,
  addBlog,
  delBlog,
  editBlog,
};
